This can be tricky if you do not know how to do this, it should also be noted depending on what text you are replacing your method you will use will change.
These methods can also be used to remove text from strings.
This is straight forward and you should just use the example below. This will not allow the use of %
@echo off set mystring=This is a water bottle. echo %mystring% set mystring=%mystring:water=glass% echo %mystring%
Outputs as follows:
This is a water bottle. --> This is a glass bottle.
To replace % you need to do a few more steps because % is a special character. This method will also allow you to change normal strings aswell.
The following example will convert a URL that has had the slashes replaced with HTML entities and of course these include % which is a special character in batch files and cannot be escaped.
We use EnableDelayedExpansion to change when these variables are parsed allowing us to convert the %5C to \ so the URL can be used appropriately. We are just using echo here but the variable can be used like normal variable aswell.
The example will convert the following URL
D:%5Cwebsites%5Chtdocs%5Cprojects%5Cqwcrm%5Csrc%5Ccache%5Csmarty%5Ccompile%5Cd0d7cab3fc900.file.financial.tpl.php --> D:\websites\htdocs\projects\qwcrm\src\cache\smarty\compile\d0d7cab3fc900.file.financial.tpl.php
The Example
@echo off :: Each variable is to be expanded at execution time rather than at parse time setlocal EnableDelayedExpansion :: Set the URL that has been passed to the batch file as a commandline parameter set URL=%1 :: Convert '%5C' --> '\' - Notice the command is wrapped in ! set URL=!URL:%%5C=\! :: Optional endlocal :: Output the URL echo %URL%
Xampp does not have an inbuilt upgrade mechanism and there does not appear to be any official instructions on how to upgrade your Xampp install in full or just certain aspects such as PHP.
My xampp location is always at:
D:\xampp
These instructions will show you how to upgrade your Xampp installation in full and assumes you have used the portable version. I never use the installer.
These processes will wipe any date in the target databases
From the xampp shell: mysqldump -u root -p --all-databases > all-db-dump.sql From the command line: D:\xampp\mysql\bin\mysqldump -u root -p --all-databases > all-db-dump.sql NB: These can be used for doing a backup of you databases
From: D:\xampp\htdocs To: D:\old-xampp\htdocs
D:\xampp
D:\websites\setup_xampp.bat
D:\xampp\mysql\data
From: D:\old-xampp\mysql\data To: D:\xampp\mysql\data
mysql_upgrade
From the xampp shell: mysql -u root -p < all-db-dump.sql From the command line: D:\xampp\mysql\bin\mysql -u root -p < D:\all-db-dump.sql NB: These can be used for restoring a backup of you databases
From: D:\old-xampp\htdocs To: D:\xampp\htdocs
From D:\xampp\libraries To: D:\xampp\libraries
D:\xampp\php\php.ini D:\xampp\mysql\bin\my.ini D:\xampp\phpMyAdmin\config.inc.php D:\xampp\apache\conf\httpd.conf D:\xampp\apache\conf\extra\httpd-ssl.conf D:\xampp\apache\conf\extra\httpd-xampp.conf D:\xampp\apache\conf\extrahttpd-vhosts.conf D:\xampp\xampp-control.ini
D:\xampp\php\ext
C:\Program Files\Notepad++\notepad++.exe
D:\xampp D:\xampp\htdocs D:\xampp\libraries
Keep your old xampp files for awhile to make sure you have not missed anything
These are my Commodore notes that don't fit anywhere else.
A collection of forums, community and ROM sites
These are my nots on trying to repair my Commodore computers and there various issues.
The best kit setup to have (in order)
- Commodore 1571 Disk Drive + ZoomFloppy
- Commodore 1541 Disk Drive (with parallel mod) + ZoomFloppy
- Any Commodore Disk Drive + Any X-Cable
Buy from
- ZoomFloppy – RETRO Innovations - The official website. You can buy the device from here.
- Commodore c64 128 user port parallel adapter + 1541 drive parallel port | eBay | cespok_64 - This seller does loads of cool stuff
These are my notes on how to transfer or image disks to and from a real Commodore Floppy disk.
Recommend Methods To Image Disks
- Copy Protected Disks (Disk to Image):
- PC (Windows) + 1571 + ZoomFloppy/XUM1541 + NIBTools + Images in G64 format
- PC (Windows) + 1541 (With Parallel Port Mod) + ZoomFloppy/XUM1541 (With Parallel Port Option) + NIBTools + Images in G64 format
- Copy Protected Disks (Disk to Emulated Disk):
- PC (Windows) + 1541/1571 + Pi1541 + Maverick (GCR Nibbler Copier) + Images in G64 format (will not do all copy protections)
- Normal Disks (Disk to Image):
- PC (Windows) + 1541/1571 + ZoomFloppy/XUM1541 + NIBTools + Images in D64 format
- Normal Disks (Disk to Emulated Disk):
- Commodore Computer + 1541/1571 + Pi1541 + DraCopy/Maverick (Fast Data Copier) + Images in D64 format
- Normal Disks (Files to Image):
- PC (Windows) + 1541/1571 + ZoomFloppy/XUM1541 + CBM-Transfer + Images in D64 format
There are some basic transfer methods I have discovered and they fall into the following groups below. Most of these methods require a real Commodore 1541 Disk Drive and they will not copy protected disks unless mentioned.
The instructions sets of the various methods for controlling the 1541 will vary, and so will the features they offer (i.e. Sector-to-Sector copying).
If you select all files it can work as if the disk is real standard DOS floppy disk for storing files etc. Programs with custom loaders (most full-disk games and demos) should be copied as disk images because they do not store their data in standard files.
In this method creating a disk images is done by the fact we are emulating a real 1541 drive which stores the disk as an image. These methods will probably work when you want to copy disks between 2 real 1541 drives attached to a Commodore computer and if you really need too for some reason, a virtual 1541 to another virtual 1541.
You can substitute the 1541 with a another Commodore drive model of your choosing.
I only mention this for completeness as I came across the following BASIC command
Copy the whole disk in drive 1 to the disk in drive 0 (on a dual-drive floppy only):
COPY D1 TO D0
You must follow the 'Proper power-on sequence' as outlined here, also read these warnings
These instructions assume you have a Windows 10 PC, although not tested in Windows 11 and Windows 7 they might work. I will be installing all of the software you might use whether or not you use it to keep the instructions easy to follow.
C:\commodore\opencbm\
C:\commodore\opencbm\install.cmd
I could install the necessary USB drivers if you like
C:\commodore\opencbm\firmware-update.bat
C:\Program Files\opencbm\
C:\commodore\floppies\
C:\commodore\vice\
c:\commodore\nibtools\
C:\commodore\cbm-transfer\
C:\commodore\cbm-transfer\CBMXfer.exe

C:\Windows\System32\comdlg32.ocx (x32) C:\Windows\SysWOW64\comdlg32.ocx (x64)
regsvr32 /u Comdlg32.ocx regsvr32 /i Comdlg32.ocx

OpenCBM: C:\Program Files\opencbm\ Vice, C1541: C:\commodore\vice\ NIBTools: C:\commodore\nibtools\
C:\commodore\floppies\
C:\commodore\opencbm\
You must follow the 'Proper power-on sequence' as outlined here, also read these warnings
Now the software is setup, it is now time to use it to save those disk you have. I will mention all of the methods I know of and it is up to you to choose which is most appropriate with the disks and equipment you have.
cbmctrl detect - checks the drive is there (might be only ZoomFloppy)
cbmctrl reset - resets the drive
cbmctrl status 8 - Will output some information about the drive
Now it is time to insert your disk that you want to image
C:\commodore\floppies\
d64copy 8 test.d64
C:\commodore\floppies\
nibread test.nib nibread test.nbz (same as above, but compressed)
CLOSE 15: OPEN 15, 8, 15 PRINT # 15, "M-W", CHR$(119) CHR$(0) CHR$(2) CHR$(n + 32) CHR$(n + 64) CLOSE 15
FORMAT FOR CHANGING DEVICE NUMBER:
PRINT#file#,"M-W:" CHR$(119) CHR$(0) CHR$(2) CHR$(address+32)
CHR$(address+64)
EXAMPLE OF CHANGING DEVICE NUMBER (FROM 8 TO 9):
10 OPEN 15, 8, 15
20 PRINT# 15, "M-W" CHR$(119) CHR$(0) CHR$(2) CHR$(9+32)
CHR$(9+64)
FORMAT FOR TEMPORARILY CHANGING THE DISK DEVICE NUMBER:
PRINT#15,"%n"
Where n = 8 or 9
EXAMPLE
Here is a program that sets any device number:
10 INPUT "NEW DEVICE NUMBER"; DV$
20 IF NOT (DV$ = "8" or DV$ = "9") THEN 10
30 OPEN 15,8,15, "%R"+DV$: CLOSE 15
If you send only the % sign, the device number will toggle between 8 and 9.
COPY D1 TO D0 or possibly COPY D8 TO D9
LOAD"$",8 LIST
LOAD"TTAPSERV.PRG",8 RUN
I have an 'Evolis New Pebble' Card printer (a.k.a Pebble 2) and these are my notes (and solution) for getting this printer to work on a Windows 10 PC.
This is my easy solution
- Install and use Pebble 4 Windows 10 drivers (Pebble 2/3/4 share the same driver,)
- Connect the Pebble on to a HP JetDirect Ex Plus (J2591A) Print Server.
- Set the print server up on your network
- Install the printer in Windows 10 using a standard TCP/IP port with the IP of the print server and then select the Evolis Pebble driver.
C:\Program Files\Evolis Card Printer\Drivers Pebble4

I could not find anywhere I could by a new drive belt but discovered you could make your own very cheaply
The belt is a Round PU Belt and we will replace it with a one having the following specs:
This is what my belt looked like when I took it out. It is no longer flexible and if you look you can see where the PU join is.

What you need




What I did
What other people have done
This is just an outline of what to do as stripping the printer is easy, just a bit fiddly at ppints.
This is an old piece of kit with no Web Admin so some notes are required.
HP Jetdirect EX Plus Print Server Manuals | HP® Customer Support - Manuals or user guides for your HP Jetdirect EX Plus Print Server
Pick the easiet option below to get the IP address of the box.
Do this
Gives this
Please type [Return] two times, to initialize telnet configuration
For HELP type "?"
> >
===JetDirect Telnet Configuration===
Present Config : BOOTP
MAC Address : xx:xx:xx:xx:xx:xx
Host Name : 10.0.0.127
IP Address : 10.0.0.127
Subnet Mask : 255.255.255.0
Default Gateway : 10.0.0.1
Syslog Server : 0.0.0.0
Idle Timeout : 90 Seconds
Set Cmnty Name : Not Specified
DHCP Config : Disabled
Passwd : Disabled
Novell : Enabled
DLC/LLC : Enabled
Ethertalk : Enabled
Banner page : Enabled
>
To Change/Configure Parameters Enter:
Parameter-name: value <Carriage Return>
Parameter-name Type of value
ip: IP-address in dotted notation
subnet-mask: address in dotted notation
default-gw: address in dotted notation
syslog-svr: address in dotted notation
idle-timeout: seconds in integers
set-cmnty-name: alpha-numeric string (32 chars max)
dhcp-config: 0 to disable, 1 to enable
novell: 0 to disable, 1 to enable
dlc-llc: 0 to disable, 1 to enable
ethertalk: 0 to disable, 1 to enable
banner: 0 to disable, 1 to enable
Type passwd to change the password.
Type "?" for HELP, "/" for current settings or "quit" to save-and-exit.
Or type "exit" to exit without saving configuration parameter entries
>
This sets static IP and disables some unused protocols. The settings above are only temporary so need to be set permanently.
NB: when you type these in, you will not see text appear in the console
Notes for Options
telnet 192.168.x.x
- Pebble 2/3/4 share the same driver, so use the Pebble 4 driver for Windows 10
- Seagull do a generic driver which i have not tried.
Most downloads are not available on the evolis.com website for the older printers so I had to look on 'The Wayback Machine' for some.
NB: I have most of the drivers and some manuals stored locally.
I am installing network sockets in every room in my house. I will have at least 1 Cat6a socket in each room running back to a nexus in one of the small bedrooms that is being used as a server room.
I will make sure that the socket locations allow the rooms to be used as normal if i decided to remove all of the kit.
I want to future proof the cabling so Cat6a is the best choice. Cat7 is difficult to use and only delivers the same as Cat6a. Cat8 has run length limitations and should only be used in datacentres for that reason. Not much stuff supports Cat8.
All sockets and wires must be shielded to CAT6a specs otherwise it is pointless. Use what ever you want to connect into the socket (patch cables) as you wont be burying these into the wall and they can easily be upgraded later if you kit needs a faster speed.
I took a while to find all of this information out but I have now put it here as a reference
This is list of places in the UK to buy network cable and in particular Cat6a. Make sure you buy the right stuff.
This is my research into Server Cabinets
There are different Types of Shelves
They can come with Different options
Cabinets
Shelves
This is dealing with you and your trainers slipping on the treadmill belt, not about the belt slipping on the motor.
Scenarios
Causes
Solutions
The images below show the underside of my failed Running belt.

This section deals with issue relating to the belt not being correctly moved by the motor.
Description
The Carl Lewis MOT25 Foldable Motorised Treadmill comes with a 0-9mph speed range and a full 15% maximum power incline, adding more variation to your workouts. Workout programmes and pulse monitor provides motivating and safe exercise. The running deck folds up at the press of a button and can be wheeled away for easy storage.
Features
Walking and running are some of the best forms of exercise for improved general fitness. Using a treadmill puts less impact on your joints and also offers a more varied workout with performance feedback.
Links

On my console I found I had the following issues
Follow these instructions and you should be able to fix both.
Obviously make sure the unit is not plugged in








Now is a good time to check if all of the buttons, displays and functions work before continuing. Be safe when messing with mains voltage. Fix any issues before going any further.
Your buttons and displays should now work with no issues for years to come.
Assuming you have the console opened as described above, the change from Miles to Kilometers or the other way around is easy.

There is a jumper on the PCB that controls this feature and only has 2 positions:
The location is shown in the image below (currently closed), set to your preference as required:

This option is set in the factory due to the region it was going to get sold in.
- Because there is a large capacitor in the motor housing you should leave the unit to discharge over night or be very careful.
- Make sure the treadmill is off and unplugged








Make sure you do not loose the metal washers













This assumes you have just removed the old one and your treadmill following the instructions above.
This is optional but highly recommend because you don't swap your running Belt everyday.
While your treadmill is open, clean the following parts with warm soapy water:
This assumes you have just removed the old one and your treadmill following the instructions above.
Not all Treadmills have this adjustable front roller
This is required otherwise your Running Belt will always track left and no amount of adjustment will fix it.
Method 1
Method 2

Video: Replacement treadmill belt - how to tension your belt | EuroTreadmillBelts.com
These are my notes for this method which I have used successfully.
You can use masking or electrical tape instead of Tipex
After you believe you have configure/tensioned your Running belt correctly as per the method above, we now need to do a final test.
This is pretty much the reverse as above (after installing your new belt), but here is an overview:
This area is only possible to access if you put the treadmill into it's vertical storage mode.
- Because there is a large capacitor in the motor housing you should leave the unit to discharge over night or be very careful.
- Make sure the treadmill is off and unplugged








I wanted to filter emails by the From field using the 'Global Email Filters' feature in my cPanel Account, but this is not working.
Below is an example rule called 'Dodgy SPAM (PCP)'.

And this is an example email I wanted to block:
From: PCP Claims <pcpclaims@somespammer.com> Sent: 13 February 2022 17:35 To: iamspam@example.com Subject: If you took finance for your car, you may have been overcharged Did you take finance for your car? There's a chance that you were overcharged If you have a current PCP agreement, or it has ended within the last 5 years, then the likelihood is that you were the victim of mis-selling. Whether that's undisclosed commission, hidden APR's, failure to offer a more suitable product or one of many other reasons. Get A Free Assessment If you no longer wish to receive these let us know here
When i tested the email it says "Error: You do not own an email filter that matches the given parameters."

So my rules are in place and I have a suitable email text to test and it should be working.
NB: It should be noted that blocking SPAM using the individual email account filters works fine, just not the global one.
After some back and forth tickets with my provider the following solution was reached and my issue disappeared.
There is some problem with 'Global email filter' option from the cpanel itself due to which is not working. Now we have forwarded this issue to the Cpanel team. They will look into it and once we received any update from them then we will update you on the same ticket accordingly.
Hosting Provider
I found that the vfilters file for this domain was missing. This is where the global filters are normally stored and read from when Exim processes them.
[01:46:26 server77 root@xxxxxxxx ~]cPs# cat /etc/vfilters/quantumwarp.com cat: /etc/vfilters/quantumwarp.com: No such file or directory
I created this file and corrected permissions.
[01:47:00 server77 root@xxxxxxxx ~]cPs# touch /etc/vfilters/quantumwarp.com && /scripts/mailperm abcdefg --verbose Checking mx configuration for demo.quantumwarp.com (abcdefg)...[auto]...Done Checking mx configuration for quantumwarp.com (abcdefg)...[local]...Done Checking mx configuration for search.quantumwarp.com (abcdefg)...[auto]...Done Fixed permissions on /etc/vfilters/quantumwarp.com : was (0644), now (0640) Fixed ownership of /etc/vfilters/quantumwarp.com : was (uid=0,gid=0), now (uid=1481,gid=12) Fixed permissions on /home/abcdefg/mail/quantumwarp.com/hosting/dovecot-quota: was (0600), now (0640)
The custom filters are now there as normally expected:
[01:50:28 server77 root@xxxxxxxx ~]cPs# wc -l /etc/vfilters/quantumwarp.com 65 /etc/vfilters/quantumwarp.com
With this, the filters should proceed to function as expected. You may find this helpful for testing the filters going forward:
As per their update (cPanel), there was issue with the vfilter configuration file which was missing for the site (quantumwarp.com). Now they have rectified the issue and 'Global Email Filter' option is working fine now.